/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package controladores;

/**
 *
 * @author Hermanos
 */
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import Conceptos.MuestraDensidad;
import MPersistencia.MPAuxiliar;
import MPersistencia.MPMuestraDensidad;
import MPersistencia.MPMuestraResiduo;
import MPersistencia.MPPuntoMuestreo;
import java.io.Serializable;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import javax.faces.event.ActionEvent;
import javax.faces.event.ValueChangeEvent;

@ManagedBean
@RequestScoped
public class controlMuestraDensidad implements Serializable {

    private static Date fecha = new Date();
    private static Date _horario = new Date();
    private static int _nTuristas;
    private static int _nVendedores;
    private static int _nAutoridades;
    private static double _densidadUsuarios;
    private static String _auxiliar;
    public static String codpunto;
    public static String ideAuxiliar;
    private static boolean showMc;
    private static List<MuestraDensidad> listamuestras;
    static SimpleDateFormat formatohora = new SimpleDateFormat("HH:mm");
        SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");

    /** Creates a new instance of controlMuestraDensidad */
    public controlMuestraDensidad() {
    }

    public static void cerrarSession() {
        fecha = new Date();
        _horario = new Date();
        _nTuristas = 0;
        _nVendedores = 0;
        _nAutoridades = 0;
        _densidadUsuarios = 0;
        _auxiliar = null;
        codpunto = null;
        ideAuxiliar = null;
        showMc = false;
        listamuestras = null;
    }

    public void registrarMuestra() throws SQLException, Exception {
      
        String fech = formato.format(fecha);
        MuestraDensidad md = new MuestraDensidad();
        md.setPuntoMuestreo(MPPuntoMuestreo.getPuntoMuestreo(codpunto));
        md.setFecha(fech);
        md.setHorario(formatohora.format(_horario));
        md.setNumeroAutoridades(_nAutoridades);
        md.setNumeroTuristas(_nTuristas);
        md.setNumeroVendedores(_nVendedores);
        md.setAuxiliar(MPAuxiliar.getAuxiliar(ideAuxiliar));
        MPMuestraDensidad.crearMuestraDensidad(md);

    }

    public static void ListarMuestrasUsuario() throws SQLException, Exception {
        listamuestras = MPMuestraDensidad.listarMuestraDensidadUsuario(ideAuxiliar);
    }

    public static void ListarMuestrasPuntoUsu(String codPm, String codPlaya) throws SQLException, Exception {
        listamuestras = MPMuestraDensidad.listarMuestraDensidadPuntoUsu(codPm, codPlaya, ideAuxiliar);
    }

    public void ListarMuestrasFecha() throws SQLException, Exception {
        SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
        String fech = formato.format(fecha);
        setListamuestras(MPMuestraDensidad.listarMuestraDensidadFecha(fech));
    }

    public void ListarMuestrasFecha1(ValueChangeEvent ev) throws SQLException, Exception {
        //if(ev.getNewValue() != null){
        //System.out.println("Fecha capturada "+fecha);
        SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
        String fech = formato.format(fecha);
        setListamuestras(MPMuestraDensidad.listarMuestraDensidadFechaAuxiliar(ideAuxiliar, fech));
        controlMuestraResiduo.setListaMuestras(MPMuestraResiduo.listarMuestraResiduoFA(fech, ideAuxiliar));
        //}
    }

    public void visualizar(ActionEvent ev) {
        setShowMc(true);
        //
    }

    /**
     * @return the fecha
     */
    public Date getFecha() {
        return fecha;
    }

    /**
     * @param fecha the fecha to set
     */
    public void setFecha(Date fecha) {
        this.fecha = fecha;
    }

    /**
     * @return the _horario
     */
    public Date getHorario() {
        return _horario;
    }

    /**
     * @param horario the _horario to set
     */
    public void setHorario(Date horario) {
        this._horario = horario;
    }

    /**
     * @return the _nTuristas
     */
    public int getnTuristas() {
        return _nTuristas;
    }

    /**
     * @param nTuristas the _nTuristas to set
     */
    public void setnTuristas(int nTuristas) {
        this._nTuristas = nTuristas;
    }

    /**
     * @return the _nVendedores
     */
    public int getnVendedores() {
        return _nVendedores;
    }

    /**
     * @param nVendedores the _nVendedores to set
     */
    public void setnVendedores(int nVendedores) {
        this._nVendedores = nVendedores;
    }

    /**
     * @return the _nAutoridades
     */
    public int getnAutoridades() {
        return _nAutoridades;
    }

    /**
     * @param nAutoridades the _nAutoridades to set
     */
    public void setnAutoridades(int nAutoridades) {
        this._nAutoridades = nAutoridades;
    }

    /**
     * @return the _densidadUsuarios
     */
    public double getDensidadUsuarios() {
        return _densidadUsuarios;
    }

    /**
     * @param densidadUsuarios the _densidadUsuarios to set
     */
    public void setDensidadUsuarios(double densidadUsuarios) {
        this._densidadUsuarios = densidadUsuarios;
    }

    /**
     * @return the codigo
     */
    public String getCodpunto() {
        return codpunto;
    }

    /**
     * @param codigo the codigo to set
     */
    public static void setCodpunto(String cod) {
        codpunto = cod;
    }

    /**
     * @return the showMc
     */
    public boolean isShowMc() {
        return showMc;
    }

    /**
     * @param showMc the showMc to set
     */
    public void setShowMc(boolean showMc) {
        this.showMc = showMc;
    }

    /**
     * @return the _auxiliar
     */
    public String getAuxiliar() {
        return _auxiliar;
    }

    /**
     * @param auxiliar the _auxiliar to set
     */
    public void setAuxiliar(String auxiliar) {
        this._auxiliar = auxiliar;
    }

    /**
     * @return the listamuestras
     */
    public List<MuestraDensidad> getListamuestras() {
        return listamuestras;
    }

    /**
     * @param listamuestras the listamuestras to set
     */
    public void setListamuestras(List<MuestraDensidad> listam) {
        listamuestras = listam;
    }
}
